home *** CD-ROM | disk | FTP | other *** search
- * ============================================================================ *
- * RectOverlap: Determine if two IBoxes overlap
- *
- * BOOL RectOverlap(struct IBox *a, struct IBox *b);
- * a0 a1
- * ============================================================================ *
-
- include 'intuition/intuition.i'
-
- SECTION rectoverlap.asm,CODE
-
- xdef _RectOverlap
- _RectOverlap
- move.w ibox_Left(a0),d0
- add.w ibox_Width(a0),d0
- cmp.w ibox_Left(a1),d0
- ble.s seperate
-
- move.w ibox_Left(a1),d0
- add.w ibox_Width(a1),d0
- cmp.w ibox_Left(a0),d0
- ble.s seperate
-
- move.w ibox_Top(a0),d0
- add.w ibox_Height(a0),d0
- cmp.w ibox_Top(a1),d0
- ble.s seperate
-
- move.w ibox_Top(a1),d0
- add.w ibox_Height(a1),d0
- cmp.w ibox_Top(a0),d0
- ble.s seperate
-
- moveq #1,d0
- rts
-
- seperate: moveq #0,d0
- rts
-
- end
-